1. Field of the Invention
The present invention generally relates to communications on a network by a network processor and, more particularly, to a method of performing Internet Protocol (IP) fragmentation and reassembly in a network processor in a more efficient manner than current designs accomplish this process.
2. Background Description
In telecommunications scenarios it is sometimes necessary to break a data frame into smaller pieces prior to transmission. This is typically done in cases where a frame may be too large for a physical link (i.e., Ethernet Max transfer unit=1.5 k bytes, token ring=17 k bytes). For such a scenario, the frame must be divided into smaller frame segments in order to satisfy link requirements. In particular, Internet Protocol (IP) fragmentation involves splitting an IP frame into smaller pieces. A typical solution in a network processor involves copying the data to create the body of each fragment, creating a new header for the fragment, and updating the buffer linked list. This is done for each IP fragment to be generated. Copying the data comprising the body of each fragment can impose a significant burden on memory allocation requirements. High performance network processors generally cannot afford to allocate the additional memory bandwidth required in this approach.
In a high performance network processor, one must develop a novel solution in order to minimize memory requirements for IP fragmentation (and IP reassembly).